home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Belgian Amiga Club - ADF Collection
/
BS1 part 34.zip
/
BS1 part 34
/
source code vol 1.adf
/
BLITTERROUTS
/
VECTOR.S
< prev
Wrap
Text File
|
1999-09-26
|
21KB
|
1,481 lines
; AMIGA INTERFACE VECTOR ROUTINE
; OPTIMIZED BY PSYCHO OF DOMINATORS
org $3D000
load $3D000
ADDER=-4000
j:
move.l #$3000,d0
lea $70000,a0
clearit:
clr.l (a0)+
sub.l #1,d0
bne clearit
move.l $4,a6
LEA GRA_LIB(pc),A1
JSR -408(A6)
move.l d0,gfxbase
MOVE.L D0,A1
MOVE.L 38(A1),OLDCOPPER
JSR -414(A6)
move.w #$7fff,$dff09a
move.l $6c,oldint3
move.l #inter,$6c
move.w #$c020,$dff09a
jsr multi
BSR setup
TMUS:
BTST #6,$BFE001
BNE TMUS
TMUS2:
MOVE.L OLDINT3,$6C
MOVE.W #$000F,$DFF096
MOVE.L OLDCOPPER,$DFF080
TST.W $DFF088
MOVE.W #$4000,$DFF09A
MOVE.W #$E02C,$DFF09A
MOVE.W #$8020,$DFF096
CLR.L D0
rts
addview:
cmp.l #220,viewdistance
bcs addon
sub.l #20,viewdistance
addon:
cmp.l #0,zgrad
beq addon2
sub.l #1,zgrad
addon2:
rts
even
GfxBase: dc.l 0
inter:
movem.l a0-a6/d0-d7,-(a7)
move.l $dff01e,d0
btst #5,d0
bne copp
intend:
move.w #$0020,$dff09c
movem.l (a7)+,a0-a6/d0-d7
rte
copp:
jsr draw_figure(pc)
jsr flip_screen(pc)
bra intend
even
oldint3:dc.l 0
COUNT3: DC.W 0
OLDINTER: DC.W 0
OLDCOPPER: DC.L 0
GRA_LIB: DC.B 'graphics.library',0,0
even
coplist:
dc.w $0100,$0200
dc.w $2001,$fffe
bpl_pointers:
dc.w $00e0,$0000
dc.w $00e2,$0000
DC.W $0100,$1200
DC.W $0104,$0000
DC.W $0108,$0000
DC.W $010A,$0000
DC.W $008E,$0c81
DC.W $0090,$3cc1
DC.W $0092,$0038
DC.W $0094,$00d0
dc.w $0096,$0020
dc.w $0180,$0000
dc.w $0182,$000f
colhere:
blk.b 1600,0
;dc.w $f801,$fffe,$0100,$0200
dc.w $ffff,$fffe
setup:
move.l #200,d6
lea colhere,a0
move.l #$3109,d0
set1:
move.l colpoi,a1
move.w d0,(a0)+
move.l #$fffe0182,(a0)+
move.w (a1),(a0)+
add.l #2,colpoi
move.l colpoi,a1
move.w (a1),d7
cmpa #$1000,d7
bne set2
move.l #colours,colpoi
set2:
add #$0100,d0
sub.l #1,d6
bne set1
move.l #coplist,$dff080
roxl.w $dff088
move.w #$8180,$dff096
rts
multi:
lea figure1,a0
move.l size,d4
mul1:
clr.l d1
clr.l d2
clr.l d3
move.w 2(a0),d1
move.w 4(a0),d2
move.w 6(a0),d3
cmpa #555,d1
beq mulend
mulu d4,d1
mulu d4,d2
mulu d4,d3
move.w d1,2(a0)
move.w d2,4(a0)
move.w d3,6(a0)
mulcont:
add.l #8,a0
bra mul1
mulend:
rts
flip_screen:
cmp.l #screen0,screen_adress
beq.s flip_screen1
flip_screen0:
lea bpl_pointers,a0
move.l #screen1,d0
move.w d0,6(a0)
swap d0
move.w d0,2(a0)
move.l #screen0,screen_adress
rts
flip_screen1:
lea bpl_pointers,a0
move.l #screen0,d0
move.w d0,6(a0)
swap d0
move.w d0,2(a0)
move.l #screen1,screen_adress
rts
wait_blitter:
btst #14,$dff002
bne.s wait_blitter
rts
draw_figure:
btst #14,$dff002
bne.s draw_figure
move.l #$01000000,$dff040
move.l screen_adress,d4
move.l d4,$dff054
move.w #0,$dff066
move.w #[272*64]+22,$dff058
move.l #$00008000,$dff072
move.l #$ffffffff,$dff044
move.w #40,$dff060
; calculate new degrees
move.l xdelta,d0
add.l d0,xgrad
and.l #$000001ff,xgrad
move.l ygrad,d6
add.l ydelta,d6
and.l #$000001ff,d6
move.l d6,ygrad
lsl.w #1,d6
move.l zgrad,d7
add.l zdelta,d7
and.l #$000001ff,d7
move.l d7,zgrad
lsl.w #1,d7
; rotate figure
move.l screen_adress,a0
add.l #adder,a0
lea figure1,a1
lea sin_table,a2
lea cos_table,a3
lea octant_table,a4
draw_figure2:
cmp.w #555,(a1)
beq.l draw_figure_exit
move.l xgrad,d5
lsl.w #1,d5
; rotate around x-axis
move.w (a3,d5),d0
muls 4(a1),d0
move.w (a2,d5),d1
muls 6(a1),d1
sub.l d1,d0
lsl.l #2,d0
move.l d0,y1
move.w (a2,d5),d0
muls 4(a1),d0
move.w (a3,d5),d1
muls 6(a1),d1
add.l d1,d0
lsl.l #2,d0
move.l d0,z1
; rotate around y-axis
move.w (a3,d6),d0
muls 2(a1),d0
move.w (a2,d6),d1
muls z1,d1
sub.l d1,d0
lsl.l #2,d0
move.l d0,x2
move.w (a2,d6),d0
muls 2(a1),d0
move.w (a3,d6),d1
muls z1,d1
add.l d1,d0
lsl.l #2,d0
swap d0
ext.l d0
move.l d0,z2
; rotate around z-axis
move.w (a3,d7),d0
muls x2,d0
move.w (a2,d7),d1
muls y1,d1
sub.l d1,d0
lsl.l #2,d0
swap d0
ext.l d0
move.w (a2,d7),d1
muls x2,d1
move.w (a3,d7),d2
muls y1,d2
add.l d2,d1
lsl.l #2,d1
swap d1
ext.l d1
; tranlate 3d-2d
move.l yviewpoint,d2
muls d0,d2
move.l viewdistance,d4
add.l d1,d4
divs d4,d2
ext.l d2
add.l xorigo,d2
move.l last_xpoint,d0
move.l d2,last_xpoint
move.l d1,d3
add.l yorigo,d3
move.l zviewpoint,d4
sub.l z2,d4
muls d3,d4
add.l viewdistance,d1
divs d1,d4
ext.l d4
add.l z2,d4
lsr.l #1,d4
move.l zorigo,d3
sub.l d4,d3
move.l last_ypoint,d1
move.l d3,last_ypoint
; draw line
tst.w (a1)
beq.l draw_figure3
cmp.l d0,d2
bne.l draw1
cmp.l d1,d3
bne.l draw1
bra.l draw_figure3
; d4=startadr for line
draw1: move.l d1,d4
move.l d4,d5
lsl.w #5,d4
lsl.w #3,d5
add.l d5,d4
move.l d0,d5
lsr.w #3,d5
add.l d5,d4
add.l a0,d4
; calculate octant and delta
move.l #0,d5
sub.w d1,d3
roxl.b #1,d5
tst.w d3
bge.s y2gy1
neg.w d3
y2gy1: sub.w d0,d2
roxl.b #1,d5
tst.w d2
bge.s x2gx1
neg.w d2
x2gx1: move.w d3,d1
sub.w d2,d1
bge.s dygdx
exg d2,d3
dygdx: roxl.b #1,d5
move.b (a4,d5),d5
lsl.l #1,d2
and.w #$000f,d0
ror.w #4,d0
or.w #$0bfa,d0
move.l d3,d1
lsl.w #6,d3
addq.w #2,d3
drawit: btst #14,$dff002
bne.s drawit
move.w d2,$dff062
sub.w d1,d2
bge.s signnl
or.b #$40,d5
signnl: move.w d2,$dff052
sub.w d1,d2
move.w d2,$dff064
; set other blitter-regs
move.w d0,$dff040
move.w d5,$dff042
move.l d4,$dff048
move.l d4,$dff054
move.w #40,$dff066
move.w d3,$dff058
draw_figure3:
addq.l #8,a1
bra.l draw_figure2
draw_figure_exit:
jsr wait_blitter
rts
screen_adress:
dc.l screen0
octant_table:
dc.b %00000001 ; 6
dc.b %00010001 ; 7
dc.b %00001001 ; 5
dc.b %00010101 ; 4
dc.b %00000101 ; 1
dc.b %00011001 ; 0
dc.b %00001101 ; 2
dc.b %00011101 ; 3
xorigo: dc.l 160
yorigo: dc.l -200
zorigo: dc.l 200
yviewpoint: dc.l 200
zviewpoint: dc.l 0
viewdistance: dc.l 300
xgrad: dc.l 0
ygrad: dc.l 0
zgrad: dc.l 0
xdelta: dc.l 2
ydelta: dc.l 2
zdelta: dc.l 4
y1: dc.l 0
z1: dc.l 0
x2: dc.l 0
z2: dc.l 0
last_xpoint: dc.l 0
last_ypoint: dc.l 0
size: dc.l 1
figure1:
DC.W 0,-20,80,20
DC.W 1,20,80,20
DC.W 1,20,80,-20
DC.W 1,-20,80,-20
DC.W 1,-20,80,20
DC.W 0,-20,40,20
DC.W 1,-20,40,20
DC.W 1,20,40,20
DC.W 1,20,40,-20
DC.W 1,-20,40,-20
DC.W 1,-20,40,20
DC.W 0,-20,80,20
DC.W 1,-20,40,20
DC.W 0,20,80,20
DC.W 1,20,40,20
DC.W 0,20,80,-20
DC.W 1,20,40,-20
DC.W 0,-20,80,-20
DC.W 1,-20,40,-20
DC.W 0,-20,80,20
DC.W 1,-20,40,20
dc.w 555,555,555,555
fig2:
sin_table:
dc.w 0
dc.w 201
dc.w 402
dc.w 603
dc.w 803
dc.w 1004
dc.w 1205
dc.w 1405
dc.w 1605
dc.w 1805
dc.w 2005
dc.w 2204
dc.w 2404
dc.w 2602
dc.w 2801
dc.w 2998
dc.w 3196
dc.w 3393
dc.w 3589
dc.w 3785
dc.w 3980
dc.w 4175
dc.w 4369
dc.w 4563
dc.w 4756
dc.w 4948
dc.w 5139
dc.w 5329
dc.w 5519
dc.w 5708
dc.w 5896
dc.w 6083
dc.w 6269
dc.w 6455
dc.w 6639
dc.w 6822
dc.w 7005
dc.w 7186
dc.w 7366
dc.w 7545
dc.w 7723
dc.w 7900
dc.w 8075
dc.w 8249
dc.w 8423
dc.w 8594
dc.w 8765
dc.w 8934
dc.w 9102
dc.w 9268
dc.w 9434
dc.w 9597
dc.w 9759
dc.w 9920
dc.w 10079
dc.w 10237
dc.w 10393
dc.w 10548
dc.w 10701
dc.w 10853
dc.w 11002
dc.w 11150
dc.w 11297
dc.w 11442
dc.w 11585
dc.w 11726
dc.w 11866
dc.w 12003
dc.w 12139
dc.w 12273
dc.w 12406
dc.w 12536
dc.w 12665
dc.w 12791
dc.w 12916
dc.w 13038
dc.w 13159
dc.w 13278
dc.w 13395
dc.w 13510
dc.w 13622
dc.w 13733
dc.w 13842
dc.w 13948
dc.w 14053
dc.w 14155
dc.w 14255
dc.w 14353
dc.w 14449
dc.w 14543
dc.w 14634
dc.w 14723
dc.w 14810
dc.w 14895
dc.w 14978
dc.w 15058
dc.w 15136
dc.w 15212
dc.w 15286
dc.w 15357
dc.w 15426
dc.w 15492
dc.w 15557
dc.w 15618
dc.w 15678
dc.w 15735
dc.w 15790
dc.w 15842
dc.w 15892
dc.w 15940
dc.w 15985
dc.w 16028
dc.w 16069
dc.w 16107
dc.w 16142
dc.w 16175
dc.w 16206
dc.w 16234
dc.w 16260
dc.w 16284
dc.w 16305
dc.w 16323
dc.w 16339
dc.w 16353
dc.w 16364
dc.w 16372
dc.w 16379
dc.w 16382
dc.w 16384
dc.w 16382
dc.w 16379
dc.w 16372
dc.w 16364
dc.w 16353
dc.w 16339
dc.w 16323
dc.w 16305
dc.w 16284
dc.w 16260
dc.w 16234
dc.w 16206
dc.w 16175
dc.w 16142
dc.w 16107
dc.w 16069
dc.w 16028
dc.w 15985
dc.w 15940
dc.w 15892
dc.w 15842
dc.w 15790
dc.w 15735
dc.w 15678
dc.w 15618
dc.w 15557
dc.w 15492
dc.w 15426
dc.w 15357
dc.w 15286
dc.w 15212
dc.w 15136
dc.w 15058
dc.w 14978
dc.w 14895
dc.w 14810
dc.w 14723
dc.w 14634
dc.w 14543
dc.w 14449
dc.w 14353
dc.w 14255
dc.w 14155
dc.w 14053
dc.w 13948
dc.w 13842
dc.w 13733
dc.w 13622
dc.w 13510
dc.w 13395
dc.w 13278
dc.w 13159
dc.w 13038
dc.w 12916
dc.w 12791
dc.w 12665
dc.w 12536
dc.w 12406
dc.w 12273
dc.w 12139
dc.w 12003
dc.w 11866
dc.w 11726
dc.w 11585
dc.w 11442
dc.w 11297
dc.w 11150
dc.w 11002
dc.w 10853
dc.w 10701
dc.w 10548
dc.w 10393
dc.w 10237
dc.w 10079
dc.w 9920
dc.w 9759
dc.w 9597
dc.w 9434
dc.w 9268
dc.w 9102
dc.w 8934
dc.w 8765
dc.w 8594
dc.w 8423
dc.w 8249
dc.w 8075
dc.w 7900
dc.w 7723
dc.w 7545
dc.w 7366
dc.w 7186
dc.w 7005
dc.w 6822
dc.w 6639
dc.w 6455
dc.w 6269
dc.w 6083
dc.w 5896
dc.w 5708
dc.w 5519
dc.w 5329
dc.w 5139
dc.w 4948
dc.w 4756
dc.w 4563
dc.w 4369
dc.w 4175
dc.w 3980
dc.w 3785
dc.w 3589
dc.w 3393
dc.w 3196
dc.w 2998
dc.w 2801
dc.w 2602
dc.w 2404
dc.w 2204
dc.w 2005
dc.w 1805
dc.w 1605
dc.w 1405
dc.w 1205
dc.w 1004
dc.w 803
dc.w 603
dc.w 402
dc.w 201
dc.w -1
dc.w -202
dc.w -403
dc.w -604
dc.w -804
dc.w -1005
dc.w -1206
dc.w -1406
dc.w -1606
dc.w -1806
dc.w -2006
dc.w -2205
dc.w -2405
dc.w -2603
dc.w -2802
dc.w -2999
dc.w -3197
dc.w -3394
dc.w -3590
dc.w -3786
dc.w -3981
dc.w -4176
dc.w -4370
dc.w -4564
dc.w -4757
dc.w -4949
dc.w -5140
dc.w -5330
dc.w -5520
dc.w -5709
dc.w -5897
dc.w -6084
dc.w -6270
dc.w -6456
dc.w -6640
dc.w -6823
dc.w -7006
dc.w -7187
dc.w -7367
dc.w -7546
dc.w -7724
dc.w -7901
dc.w -8076
dc.w -8250
dc.w -8424
dc.w -8595
dc.w -8766
dc.w -8935
dc.w -9103
dc.w -9269
dc.w -9435
dc.w -9598
dc.w -9760
dc.w -9921
dc.w -10080
dc.w -10238
dc.w -10394
dc.w -10549
dc.w -10702
dc.w -10854
dc.w -11003
dc.w -11151
dc.w -11298
dc.w -11443
dc.w -11586
dc.w -11727
dc.w -11867
dc.w -12004
dc.w -12140
dc.w -12274
dc.w -12407
dc.w -12537
dc.w -12666
dc.w -12792
dc.w -12917
dc.w -13039
dc.w -13160
dc.w -13279
dc.w -13396
dc.w -13511
dc.w -13623
dc.w -13734
dc.w -13843
dc.w -13949
dc.w -14054
dc.w -14156
dc.w -14256
dc.w -14354
dc.w -14450
dc.w -14544
dc.w -14635
dc.w -14724
dc.w -14811
dc.w -14896
dc.w -14979
dc.w -15059
dc.w -15137
dc.w -15213
dc.w -15287
dc.w -15358
dc.w -15427
dc.w -15493
dc.w -15558
dc.w -15619
dc.w -15679
dc.w -15736
dc.w -15791
dc.w -15843
dc.w -15893
dc.w -15941
dc.w -15986
dc.w -16029
dc.w -16070
dc.w -16108
dc.w -16143
dc.w -16176
dc.w -16207
dc.w -16235
dc.w -16261
dc.w -16285
dc.w -16306
dc.w -16324
dc.w -16340
dc.w -16354
dc.w -16365
dc.w -16373
dc.w -16380
dc.w -16383
dc.w -16384
dc.w -16383
dc.w -16380
dc.w -16373
dc.w -16365
dc.w -16354
dc.w -16340
dc.w -16324
dc.w -16306
dc.w -16285
dc.w -16261
dc.w -16235
dc.w -16207
dc.w -16176
dc.w -16143
dc.w -16108
dc.w -16070
dc.w -16029
dc.w -15986
dc.w -15941
dc.w -15893
dc.w -15843
dc.w -15791
dc.w -15736
dc.w -15679
dc.w -15619
dc.w -15558
dc.w -15493
dc.w -15427
dc.w -15358
dc.w -15287
dc.w -15213
dc.w -15137
dc.w -15059
dc.w -14979
dc.w -14896
dc.w -14811
dc.w -14724
dc.w -14635
dc.w -14544
dc.w -14450
dc.w -14354
dc.w -14256
dc.w -14156
dc.w -14054
dc.w -13949
dc.w -13843
dc.w -13734
dc.w -13623
dc.w -13511
dc.w -13396
dc.w -13279
dc.w -13160
dc.w -13039
dc.w -12917
dc.w -12792
dc.w -12666
dc.w -12537
dc.w -12407
dc.w -12274
dc.w -12140
dc.w -12004
dc.w -11867
dc.w -11727
dc.w -11586
dc.w -11443
dc.w -11298
dc.w -11151
dc.w -11003
dc.w -10854
dc.w -10702
dc.w -10549
dc.w -10394
dc.w -10238
dc.w -10080
dc.w -9921
dc.w -9760
dc.w -9598
dc.w -9435
dc.w -9269
dc.w -9103
dc.w -8935
dc.w -8766
dc.w -8595
dc.w -8424
dc.w -8250
dc.w -8076
dc.w -7901
dc.w -7724
dc.w -7546
dc.w -7367
dc.w -7187
dc.w -7006
dc.w -6823
dc.w -6640
dc.w -6456
dc.w -6270
dc.w -6084
dc.w -5897
dc.w -5709
dc.w -5520
dc.w -5330
dc.w -5140
dc.w -4949
dc.w -4757
dc.w -4564
dc.w -4370
dc.w -4176
dc.w -3981
dc.w -3786
dc.w -3590
dc.w -3394
dc.w -3197
dc.w -2999
dc.w -2802
dc.w -2603
dc.w -2405
dc.w -2205
dc.w -2006
dc.w -1806
dc.w -1606
dc.w -1406
dc.w -1206
dc.w -1005
dc.w -804
dc.w -604
dc.w -403
dc.w -202
cos_table:
dc.w 16384
dc.w 16382
dc.w 16379
dc.w 16372
dc.w 16364
dc.w 16353
dc.w 16339
dc.w 16323
dc.w 16305
dc.w 16284
dc.w 16260
dc.w 16234
dc.w 16206
dc.w 16175
dc.w 16142
dc.w 16107
dc.w 16069
dc.w 16028
dc.w 15985
dc.w 15940
dc.w 15892
dc.w 15842
dc.w 15790
dc.w 15735
dc.w 15678
dc.w 15618
dc.w 15557
dc.w 15492
dc.w 15426
dc.w 15357
dc.w 15286
dc.w 15212
dc.w 15136
dc.w 15058
dc.w 14978
dc.w 14895
dc.w 14810
dc.w 14723
dc.w 14634
dc.w 14543
dc.w 14449
dc.w 14353
dc.w 14255
dc.w 14155
dc.w 14053
dc.w 13948
dc.w 13842
dc.w 13733
dc.w 13622
dc.w 13510
dc.w 13395
dc.w 13278
dc.w 13159
dc.w 13038
dc.w 12916
dc.w 12791
dc.w 12665
dc.w 12536
dc.w 12406
dc.w 12273
dc.w 12139
dc.w 12003
dc.w 11866
dc.w 11726
dc.w 11585
dc.w 11442
dc.w 11297
dc.w 11150
dc.w 11002
dc.w 10853
dc.w 10701
dc.w 10548
dc.w 10393
dc.w 10237
dc.w 10079
dc.w 9920
dc.w 9759
dc.w 9597
dc.w 9434
dc.w 9268
dc.w 9102
dc.w 8934
dc.w 8765
dc.w 8594
dc.w 8423
dc.w 8249
dc.w 8075
dc.w 7900
dc.w 7723
dc.w 7545
dc.w 7366
dc.w 7186
dc.w 7005
dc.w 6822
dc.w 6639
dc.w 6455
dc.w 6269
dc.w 6083
dc.w 5896
dc.w 5708
dc.w 5519
dc.w 5329
dc.w 5139
dc.w 4948
dc.w 4756
dc.w 4563
dc.w 4369
dc.w 4175
dc.w 3980
dc.w 3785
dc.w 3589
dc.w 3393
dc.w 3196
dc.w 2998
dc.w 2801
dc.w 2602
dc.w 2404
dc.w 2204
dc.w 2005
dc.w 1805
dc.w 1605
dc.w 1405
dc.w 1205
dc.w 1004
dc.w 803
dc.w 603
dc.w 402
dc.w 201
dc.w -1
dc.w -202
dc.w -403
dc.w -604
dc.w -804
dc.w -1005
dc.w -1206
dc.w -1406
dc.w -1606
dc.w -1806
dc.w -2006
dc.w -2205
dc.w -2405
dc.w -2603
dc.w -2802
dc.w -2999
dc.w -3197
dc.w -3394
dc.w -3590
dc.w -3786
dc.w -3981
dc.w -4176
dc.w -4370
dc.w -4564
dc.w -4757
dc.w -4949
dc.w -5140
dc.w -5330
dc.w -5520
dc.w -5709
dc.w -5897
dc.w -6084
dc.w -6270
dc.w -6456
dc.w -6640
dc.w -6823
dc.w -7006
dc.w -7187
dc.w -7367
dc.w -7546
dc.w -7724
dc.w -7901
dc.w -8076
dc.w -8250
dc.w -8424
dc.w -8595
dc.w -8766
dc.w -8935
dc.w -9103
dc.w -9269
dc.w -9435
dc.w -9598
dc.w -9760
dc.w -9921
dc.w -10080
dc.w -10238
dc.w -10394
dc.w -10549
dc.w -10702
dc.w -10854
dc.w -11003
dc.w -11151
dc.w -11298
dc.w -11443
dc.w -11586
dc.w -11727
dc.w -11867
dc.w -12004
dc.w -12140
dc.w -12274
dc.w -12407
dc.w -12537
dc.w -12666
dc.w -12792
dc.w -12917
dc.w -13039
dc.w -13160
dc.w -13279
dc.w -13396
dc.w -13511
dc.w -13623
dc.w -13734
dc.w -13843
dc.w -13949
dc.w -14054
dc.w -14156
dc.w -14256
dc.w -14354
dc.w -14450
dc.w -14544
dc.w -14635
dc.w -14724
dc.w -14811
dc.w -14896
dc.w -14979
dc.w -15059
dc.w -15137
dc.w -15213
dc.w -15287
dc.w -15358
dc.w -15427
dc.w -15493
dc.w -15558
dc.w -15619
dc.w -15679
dc.w -15736
dc.w -15791
dc.w -15843
dc.w -15893
dc.w -15941
dc.w -15986
dc.w -16029
dc.w -16070
dc.w -16108
dc.w -16143
dc.w -16176
dc.w -16207
dc.w -16235
dc.w -16261
dc.w -16285
dc.w -16306
dc.w -16324
dc.w -16340
dc.w -16354
dc.w -16365
dc.w -16373
dc.w -16380
dc.w -16383
dc.w -16384
dc.w -16383
dc.w -16380
dc.w -16373
dc.w -16365
dc.w -16354
dc.w -16340
dc.w -16324
dc.w -16306
dc.w -16285
dc.w -16261
dc.w -16235
dc.w -16207
dc.w -16176
dc.w -16143
dc.w -16108
dc.w -16070
dc.w -16029
dc.w -15986
dc.w -15941
dc.w -15893
dc.w -15843
dc.w -15791
dc.w -15736
dc.w -15679
dc.w -15619
dc.w -15558
dc.w -15493
dc.w -15427
dc.w -15358
dc.w -15287
dc.w -15213
dc.w -15137
dc.w -15059
dc.w -14979
dc.w -14896
dc.w -14811
dc.w -14724
dc.w -14635
dc.w -14544
dc.w -14450
dc.w -14354
dc.w -14256
dc.w -14156
dc.w -14054
dc.w -13949
dc.w -13843
dc.w -13734
dc.w -13623
dc.w -13511
dc.w -13396
dc.w -13279
dc.w -13160
dc.w -13039
dc.w -12917
dc.w -12792
dc.w -12666
dc.w -12537
dc.w -12407
dc.w -12274
dc.w -12140
dc.w -12004
dc.w -11867
dc.w -11727
dc.w -11586
dc.w -11443
dc.w -11298
dc.w -11151
dc.w -11003
dc.w -10854
dc.w -10702
dc.w -10549
dc.w -10394
dc.w -10238
dc.w -10080
dc.w -9921
dc.w -9760
dc.w -9598
dc.w -9435
dc.w -9269
dc.w -9103
dc.w -8935
dc.w -8766
dc.w -8595
dc.w -8424
dc.w -8250
dc.w -8076
dc.w -7901
dc.w -7724
dc.w -7546
dc.w -7367
dc.w -7187
dc.w -7006
dc.w -6823
dc.w -6640
dc.w -6456
dc.w -6270
dc.w -6084
dc.w -5897
dc.w -5709
dc.w -5520
dc.w -5330
dc.w -5140
dc.w -4949
dc.w -4757
dc.w -4564
dc.w -4370
dc.w -4176
dc.w -3981
dc.w -3786
dc.w -3590
dc.w -3394
dc.w -3197
dc.w -2999
dc.w -2802
dc.w -2603
dc.w -2405
dc.w -2205
dc.w -2006
dc.w -1806
dc.w -1606
dc.w -1406
dc.w -1206
dc.w -1005
dc.w -804
dc.w -604
dc.w -403
dc.w -202
dc.w -1
dc.w 201
dc.w 402
dc.w 603
dc.w 803
dc.w 1004
dc.w 1205
dc.w 1405
dc.w 1605
dc.w 1805
dc.w 2005
dc.w 2204
dc.w 2404
dc.w 2602
dc.w 2801
dc.w 2998
dc.w 3196
dc.w 3393
dc.w 3589
dc.w 3785
dc.w 3980
dc.w 4175
dc.w 4369
dc.w 4563
dc.w 4756
dc.w 4948
dc.w 5139
dc.w 5329
dc.w 5519
dc.w 5708
dc.w 5896
dc.w 6083
dc.w 6269
dc.w 6455
dc.w 6639
dc.w 6822
dc.w 7005
dc.w 7186
dc.w 7366
dc.w 7545
dc.w 7723
dc.w 7900
dc.w 8075
dc.w 8249
dc.w 8423
dc.w 8594
dc.w 8765
dc.w 8934
dc.w 9102
dc.w 9268
dc.w 9434
dc.w 9597
dc.w 9759
dc.w 9920
dc.w 10079
dc.w 10237
dc.w 10393
dc.w 10548
dc.w 10701
dc.w 10853
dc.w 11002
dc.w 11150
dc.w 11297
dc.w 11442
dc.w 11585
dc.w 11726
dc.w 11866
dc.w 12003
dc.w 12139
dc.w 12273
dc.w 12406
dc.w 12536
dc.w 12665
dc.w 12791
dc.w 12916
dc.w 13038
dc.w 13159
dc.w 13278
dc.w 13395
dc.w 13510
dc.w 13622
dc.w 13733
dc.w 13842
dc.w 13948
dc.w 14053
dc.w 14155
dc.w 14255
dc.w 14353
dc.w 14449
dc.w 14543
dc.w 14634
dc.w 14723
dc.w 14810
dc.w 14895
dc.w 14978
dc.w 15058
dc.w 15136
dc.w 15212
dc.w 15286
dc.w 15357
dc.w 15426
dc.w 15492
dc.w 15557
dc.w 15618
dc.w 15678
dc.w 15735
dc.w 15790
dc.w 15842
dc.w 15892
dc.w 15940
dc.w 15985
dc.w 16028
dc.w 16069
dc.w 16107
dc.w 16142
dc.w 16175
dc.w 16206
dc.w 16234
dc.w 16260
dc.w 16284
dc.w 16305
dc.w 16323
dc.w 16339
dc.w 16353
dc.w 16364
dc.w 16372
dc.w 16379
dc.w 16382
SCREEN0 = $71000
SCREEN1 = $74000
colpoi: dc.l colours
colours:
DC.W $000F,$001F,$002F
DC.W $003F,$004F,$005F,$006F,$007F,$008F,$009F,$00AF,$00BF,$00CF,$00DF
DC.W $00EF,$00FF,$01FF,$02FF,$03FF,$04FF,$05FF,$06FF,$07FF,$08FF,$09FF
DC.W $0AFF,$0BFF,$0CFF,$0DFF,$0EFF,$0FFF,$0FEF,$0FDF,$0FCF,$0FBF,$0FAF
DC.W $0F9F,$0F8F,$0F7F,$0F6F,$0F5F,$0F4F,$0F3F,$0F2F,$0F1F,$0F0F,$0F0E
DC.W $0F0D,$0F0C,$0F0B,$0F0A,$0F09,$0F08,$0F08,$0F06,$0F05,$0F04,$0F03
DC.W $0F02,$0F01,$0F00,$0F10,$0F20,$0F30,$0F40,$0F50,$0F60,$0F70,$0F80
DC.W $0F90,$0FA0,$0FB0,$0FC0,$0FD0,$0FE0,$0FF0,$0EF0,$0DF0,$0CF0,$0BF0
DC.W $0AF0,$09F0,$08F0,$07F0,$06F0,$05F0,$04F0,$03F0,$02F0,$01F0,$00F0
DC.W $00F1,$00F2,$00F3,$00F4,$00F5,$00F6,$00F7,$00F8,$00F9,$00FA,$00FB
DC.W $00FC,$00FD,$00FE,$00FF,$00EF,$00DF,$00CF,$00BF,$00AF,$009F,$008F
DC.W $007F,$006F,$005F,$004F,$003F,$002F,$001F
DC.W $1000